1
00:00:06,990 --> 00:00:14,370
Let's do a quick review and see how we set up this really cool simulated controller area network, the

2
00:00:14,370 --> 00:00:22,450
simulated car network that runs just like a real network in your own automobile, can utilize an ICBM,

3
00:00:22,470 --> 00:00:23,700
made the whole thing possible.

4
00:00:23,710 --> 00:00:30,060
We can run a real controller that looks like a PlayStation controller down here to run using either

5
00:00:30,060 --> 00:00:34,350
the keyboard or a real USB controller to drive a virtual car.

6
00:00:34,350 --> 00:00:40,140
And we can see on the instrument cluster simulator, the icy simulator, the speed we can see the doors

7
00:00:40,140 --> 00:00:40,860
lock and unlock.

8
00:00:40,860 --> 00:00:43,020
We can see the signals turned on and off.

9
00:00:43,260 --> 00:00:48,220
And then we could even see the network packages that came by and we saw how to capture and replay those.

10
00:00:48,600 --> 00:00:50,900
Well, let's go back through how we made that happen.

11
00:00:50,910 --> 00:00:55,900
First of all, we had to install a few dependencies that meant that there were some libraries, that

12
00:00:55,950 --> 00:01:01,320
this package depended on the live SDL, too, and then SDL to image.

13
00:01:01,620 --> 00:01:04,110
Then we had to get the can utilize.

14
00:01:04,110 --> 00:01:06,300
Those are the controller area network utilities.

15
00:01:06,300 --> 00:01:13,260
That's what led us set up that virtual Khan network or the V can zero on our Linux computer.

16
00:01:13,860 --> 00:01:19,830
Then we used GitHub for the first time, so we used Git to grab some really cool open source software

17
00:01:19,830 --> 00:01:20,790
from Zombi Craig.

18
00:01:20,790 --> 00:01:22,950
That's Craig Smith and the team at Open Garages.

19
00:01:22,950 --> 00:01:29,640
Doug, the I simulator of the instrument cluster simulator gives us a controller and a dashboard simulator

20
00:01:29,640 --> 00:01:33,150
to let us drive a virtual car to practice car hacking safely.

21
00:01:33,540 --> 00:01:37,200
Then we didn't have to really compile the icy SIM tools using make.

22
00:01:37,380 --> 00:01:44,970
We just could CDN and use the DOT controls and the dot ICSOM folders, files, programs that were already

23
00:01:44,970 --> 00:01:45,330
in there.

24
00:01:45,750 --> 00:01:51,540
But I'm going to record a bonus section that was really popular in our previous two years of the National

25
00:01:51,540 --> 00:01:57,630
Cyber Warriors Academy, where we hack the car hacking software and we'll learn to use make to recompile.

26
00:01:57,630 --> 00:02:00,240
I'll do that right after this review lesson here.

27
00:02:00,540 --> 00:02:08,160
But we are able to do an LS inside the ICC directory and we saw two new program files, ICSOM and controls.

28
00:02:08,820 --> 00:02:10,710
Then to start our virtual kin network.

29
00:02:10,710 --> 00:02:16,110
Any time you restart your computer, you'll have to reload this Vikan module into your Linux kernel.

30
00:02:16,380 --> 00:02:21,300
That's with the mod probe Vikan and notice that's just Vuksanovic in zero.

31
00:02:21,300 --> 00:02:26,760
They're just Volcan because we're loading the module that lets us do virtual controller area network

32
00:02:27,000 --> 00:02:28,650
simulating on our computer.

33
00:02:28,920 --> 00:02:34,110
Then we use message to make sure that it was actually in the kernel history.

34
00:02:35,160 --> 00:02:36,480
So we displayed those messages.

35
00:02:36,480 --> 00:02:44,460
IP link add dev V can zero type V can that added a new device called V can zero of Type V can.

36
00:02:44,460 --> 00:02:51,870
So we set up a network and then we turn or connected to that network or turned it on by saying IP link

37
00:02:51,870 --> 00:02:55,620
set up the can zero we were able to run can sniff around.

38
00:02:55,620 --> 00:02:57,960
In the beginning there was nothing running across that network.

39
00:02:57,960 --> 00:03:04,740
But as soon as we loaded the icy simulator and the controls from our I see SIM folder, we were able

40
00:03:04,740 --> 00:03:11,280
to run a real controller area network simulator and see that traffic flow by.

41
00:03:11,550 --> 00:03:17,280
And we could see the packets colored different colors because that actually flag the red ones had changed

42
00:03:17,550 --> 00:03:19,050
and the others are staying the same.

43
00:03:19,290 --> 00:03:24,390
And remember, we had to use Slash because we were running these files locally from that one folder

44
00:03:24,390 --> 00:03:28,020
we had and added this system to our path yet for our show.

45
00:03:28,650 --> 00:03:31,470
So we were able to do a car replay attack.

46
00:03:31,470 --> 00:03:38,100
That's a very common hack on networks and on devices like cars, even your door locks in your home.

47
00:03:38,100 --> 00:03:42,240
A replay attack is a pretty common way to test your security.

48
00:03:42,240 --> 00:03:47,610
So if you have a Bluetooth lock, you can use a Bluetooth packet, sniffer and wireless device or laptop

49
00:03:47,610 --> 00:03:53,850
computer and you can listen to those packets as you press your door key unlock if you have one of those

50
00:03:53,850 --> 00:03:58,080
Bluetooth unlocks or when you send the signal from your cell phone.

51
00:03:58,410 --> 00:04:03,630
So if you're using a Bluetooth sniffer, you can sniff just like we used a can sniffer to sniff from

52
00:04:03,630 --> 00:04:04,530
the can network.

53
00:04:04,800 --> 00:04:07,590
Then you can replay that and see if it unlocks your front door.

54
00:04:07,770 --> 00:04:12,640
Unfortunately, there are some locks that came out early on that you could do that with.

55
00:04:12,870 --> 00:04:17,790
Same thing for a garage door opener in the old days, you could just listen using a simple software

56
00:04:17,790 --> 00:04:25,890
defined radio to somebody, press their garage door opener or your or your car lock and unlock from

57
00:04:25,890 --> 00:04:26,610
your key fob.

58
00:04:26,970 --> 00:04:34,290
And somebody could replay that same signal and unlock a door, open a garage door, etc..

59
00:04:34,440 --> 00:04:37,380
So replay attacks are really common thing that we like to try.

60
00:04:37,560 --> 00:04:39,210
And in this case, it worked beautifully.

61
00:04:39,210 --> 00:04:41,760
We could do everything that we could do from the can dump.

62
00:04:41,760 --> 00:04:48,240
So everything we did while we were capturing those packets and logging them with candy dash elv on becan

63
00:04:48,240 --> 00:04:54,150
zero, like pressing the accelerator, unlocking the doors, turning the turn lights, the turn signals

64
00:04:54,150 --> 00:04:55,170
on left and right.

65
00:04:55,920 --> 00:05:02,970
All of those things were shown and replayed when we replayed that same packet file on our can player.

66
00:05:03,510 --> 00:05:06,250
So when we did Candombe Dash LMB can road.

67
00:05:06,560 --> 00:05:12,770
Added, this new file can dump it a long time stamp backlog, and we just had to replay the capture

68
00:05:12,770 --> 00:05:18,650
commands with can player space dashi for an input file, can add up and notice we didn't have to use

69
00:05:18,650 --> 00:05:22,670
becan zero there because we were replaying on the same network that we recorded and on.

70
00:05:22,940 --> 00:05:28,640
If you wanted to record from your Vikan zero and play out over one of those serial connections to a

71
00:05:28,640 --> 00:05:30,470
car, Acel can zero.

72
00:05:30,470 --> 00:05:37,730
For example, your serial can if you plug in a real USB to can device, then you would just say SLK

73
00:05:37,740 --> 00:05:44,330
in zero equals V zero so that you can replay what was originally designed or captured on the can zero

74
00:05:44,330 --> 00:05:45,980
over the serial can connection.

75
00:05:46,580 --> 00:05:51,320
Well, these are some exciting hacking tools and it's just scratching the surface of car hacking.

76
00:05:51,590 --> 00:05:56,540
But if you can understand how to do this, you can do some important things to test your own car and

77
00:05:56,720 --> 00:06:01,730
maybe even replay whether you want to be able to unlock your doors even when your door locks are not

78
00:06:01,730 --> 00:06:04,900
working or the control panel on your door is not working.

79
00:06:04,910 --> 00:06:11,180
Roll down your windows, turn on your stereo, try sniffing and do it responsibly, only on a car that

80
00:06:11,180 --> 00:06:11,630
you own.

81
00:06:12,230 --> 00:06:16,610
But like I mentioned, we can capture and replay single events.

82
00:06:16,610 --> 00:06:22,310
So if your car windows stop working, all of a sudden you can try going to a friend's car that has the

83
00:06:22,310 --> 00:06:29,720
same kind of automobile and just capture that signal when you lower the windows and then save that as

84
00:06:29,720 --> 00:06:29,930
one.

85
00:06:29,930 --> 00:06:33,200
To capture that signal when you raise the windows is another.

86
00:06:33,380 --> 00:06:38,510
And you can plug into your controller area network using a 20 to 40 dollar cable and your laptop computer

87
00:06:38,750 --> 00:06:41,390
and you can control your windows once again.

88
00:06:41,750 --> 00:06:44,080
So some really cool things are possible.

89
00:06:44,090 --> 00:06:47,990
Once you understand how to use this, it won't work on every car the same.

90
00:06:47,990 --> 00:06:54,500
And you do have to capture the the traffic so that you can start to understand it, but can dump can

91
00:06:54,510 --> 00:06:57,310
player, can sniffer will allow you to do that pretty well.

92
00:06:57,830 --> 00:07:02,450
Now, coming up in this bonus lesson, what I want to do for you show you a really cool lesson that

93
00:07:02,450 --> 00:07:07,340
we did with our students in 2016 and 2017 for the National Cyber Warriors Academy.

94
00:07:07,730 --> 00:07:11,180
We are going to hack the car hacking software.

95
00:07:11,360 --> 00:07:16,910
We're actually going to remake that ICSOM file and make some edits so that we can take this speedometer

96
00:07:16,910 --> 00:07:20,330
instead of just stopping at I think it stopped at one hundred miles per hour.

97
00:07:20,570 --> 00:07:24,650
We're going to be able to push that all the way up to 300 miles per hour.

98
00:07:24,650 --> 00:07:25,940
We're going to peg it all the way around.

99
00:07:26,270 --> 00:07:27,650
So that was a fun lesson.

100
00:07:27,650 --> 00:07:33,920
Plus, it shows some really cool skills with editing some open source software, editing the C files

101
00:07:33,920 --> 00:07:40,790
that we downloaded from Excel, from GitHub, and then making use in the new compiler and the make utility

102
00:07:41,030 --> 00:07:45,890
so that we can remake or recompile our car hacking simulation software.

103
00:07:45,890 --> 00:07:48,710
So we're going to hack the car hacking software.

104
00:07:48,950 --> 00:07:51,680
We'll see that as a bonus lesson coming up next.

